Use the CustomerLifecycleGoal
and
CampaignLifecycleGoal
resources of the
Google Ads API to configure goals related to the customer lifecycle. As of v15, the
Google Ads API supports customer acquisition
goals for efficiently
acquiring new customers through your Google Ads Search and Performance Max
campaigns.
If your Google Ads account is using cross-account conversion tracking, then you must configure customer lifecycle goals in the Google Ads conversion customer account instead of directly in your Google Ads account. You should still set campaign lifecycle goals in your account, however. This is similar to how you manage other goals when using cross-account conversion tracking.
Handle create and update operations (for v15 only)
In Google Ads API v15, the operations supported in the
CustomerLifecycleGoalService
and
CampaignLifecycleGoalService
differ slightly from other services in the Google Ads API. Instead of having separate
create
and update
operations, the v15
CustomerLifecycleGoalOperation
and
CampaignLifecycleGoalOperation
have only a create
operation, and you indicate your intent using the
update_mask
as follows:
To create a lifecycle goal using v15, populate
create
with the goal but don't set itsresource_name
and don't set theupdate_mask
of the operation.To update a lifecycle goal using v15, populate
create
with the goal, set theresource_name
of the goal, and set theupdate_mask
to list the fields you want to update.
Configure customer lifecycle goals
At the customer-level, configure a lifecycle goal by creating or updating a
CustomerLifecycleGoal
. There can be at
most one CustomerLifecycleGoal
per Google Ads account.
The customer lifecycle goal contains two fields:
lifecycle_goal_customer_definition_settings
Set the
existing_user_lists
field to indicate which user lists contain existing customers.The
high_lifetime_value_user_lists
field indicates which user lists contain high lifetime value customers. You can read this field, but it is immutable in the Google Ads API.customer_acquisition_goal_value_settings
Set the
value
field to define the additional value adjustment to add to a new customer's first purchase conversion.You can read the
high_lifetime_value
of the goal, but this field is immutable in the Google Ads API.
Configure campaign lifecycle goals
At the campaign level, configure a lifecycle goal by creating or updating a
CampaignLifecycleGoal
. There can be at
most one CampaignLifecycleGoal
per campaign.
The customer_acquisition_goal_settings
field of a campaign-level goal lets you
set the optimization mode of the campaign as well as override the value settings
from the parent customer goal.
The optimization_mode
can be one of the following values:
TARGET_ALL_EQUALLY
- The campaign targets new and existing customers equally. This is the default optimization mode.
BID_HIGHER_FOR_NEW_CUSTOMERS
- The campaign targets both new and existing customers, but bids higher for
customers that are predicted be new and are not in one of the
existing_user_lists
. TARGET_NEW_CUSTOMERS
- The campaign only targets new customers.
The value_settings
are the same as the
customer_acquisition_goal_value_settings
on the customer-level goal. Use these
campaign-level settings to override the values for a specific campaign.
Retrieve lifecycle goals
As with other resources in the Google Ads API, use the search
or searchStream
methods of GoogleAdsService
to retrieve
lifecycle goals.
The following query retrieves the details of every CustomerLifecycleGoal
in a
Google Ads account:
SELECT
customer_lifecycle_goal.lifecycle_goal_customer_definition_settings.existing_user_lists,
customer_lifecycle_goal.lifecycle_goal_customer_definition_settings.high_lifetime_value_user_lists,
customer_lifecycle_goal.customer_acquisition_goal_value_settings.value,
customer_lifecycle_goal.customer_acquisition_goal_value_settings.high_lifetime_value
FROM customer_lifecycle_goal
Similarly, the following query retrieves the details of every
CampaignLifecycleGoal
:
SELECT
campaign_lifecycle_goal.campaign,
campaign_lifecycle_goal.customer_acquisition_goal_settings.optimization_mode,
campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.value,
campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.high_lifetime_value
FROM campaign_lifecycle_goal